package cn.gxljc.technology.store_management.mapper;

import cn.gxljc.technology.store_management.entity.AccountInfo;
import org.apache.ibatis.annotations.*;

/*
 * @author LuoShengYing
 * @date 2021/05/22
 * AccountInfoMapper用于管理AccountInfo(账户详情)表
 * */
@Mapper
public interface AccountInfoMapper {

    // 通过accountID，查询对应的AccountInfo数据
    @Select("select `accountID`,`accountName`,`phoneNumber`,`email`" +
            "from `accountinfo` where `accountID` = #{accountID}")
    AccountInfo selectByAccountID(@Param("accountID") long accountID);

    // 通过accountID，新增一条AccountInfo数据，并返回boolean类型数据显示成功与否
    @Insert("Insert `accountinfo`" +
            "set `accountID` = #{accountID}, `accountName` = #{accountName}, `phoneNumber` = #{phoneNumber}, `email` = #{email}")
    boolean insertAccountInfo(AccountInfo accountInfo);

    // 通过accountID，更新AccountInfo数据，并返回boolean类型数据显示成功与否
    @Update("update `accountinfo`" +
            "set `accountName` = #{accountName}, `phoneNumber` = #{phoneNumber}, `email` = #{email}")
    boolean updateAccountInfo(AccountInfo accountInfo);

    // 通过accountID，删除对应的AccountInfo数据，并返回boolean类型数据显示成功与否
    @Delete("delete from `accountinfo`" +
            "where `accountID` = #{accountID}")
    boolean deleteAccountInfo(@Param("accountID") long accountID);
}
